1438D - Powerful Ksenia - CodeForces Solution


bitmasks constructive algorithms math *2200

Please click on ads to support us..

C++ Code:

#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using pii = pair<int, int>;
#define mp make_pair
#define F first
#define S second

void print(int n) {
  cout << "YES\n";
  assert(n % 2 == 1);
  cout << n - 1 << "\n";
  for (int i = 1; i < n; i += 2) {
    cout << i << " " << i + 1 << " " << i + 2 << "\n";
  }
  for (int i = 1; i < n; i += 2) {
    cout << i << " " << i + 1 << " " << n << "\n";
  }
}

int main() {
  // ios_base::sync_with_stdio(false);
  // cin.tie(NULL);

  int n;
  cin >> n;
  if (n % 2 == 0) {
    int x = 0;
    for (int i = 0; i < n; i++) {
      int a;
      cin >> a;
      x ^= a;
    }
    if (x != 0) {
      cout << "NO\n";
    } else {
      print(n - 1);
    }
  } else {
    print(n);
  }

  return 0;
}


Comments

Submit
0 Comments
More Questions

1607A - Linear Keyboard
EQUALCOIN Equal Coins
XOREQN Xor Equation
MAKEPAL Weird Palindrome Making
HILLSEQ Hill Sequence
MAXBRIDGE Maximise the bridges
WLDRPL Wildcard Replacement
1221. Split a String in Balanced Strings
1002. Find Common Characters
1602A - Two Subsequences
1555A - PizzaForces
1607B - Odd Grasshopper
1084A - The Fair Nut and Elevator
1440B - Sum of Medians
1032A - Kitchen Utensils
1501B - Napoleon Cake
1584B - Coloring Rectangles
1562B - Scenes From a Memory
1521A - Nastia and Nearly Good Numbers
208. Implement Trie
1605B - Reverse Sort
1607C - Minimum Extraction
1604B - XOR Specia-LIS-t
1606B - Update Files
1598B - Groups
1602B - Divine Array
1594B - Special Numbers
1614A - Divan and a Store
2085. Count Common Words With One Occurrence
2089. Find Target Indices After Sorting Array